* {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    margin: 0;
    padding: 0;
}
*:after,
*:before {
    box-sizing: border-box;
}

html {
    font-family: "Source Han Sans CN", "微软雅黑", "Arial", "Helvetica Neue", Helvetica, STHeiTi, arial, sans-serif;
    -webkit-font-smoothing: antialiased;
}

body {
    width: 1920rem;
    overflow-x: hidden;
    background: #fff;
    display: none;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
    -moz-text-size-adjust: 100% !important;
}

ul, li {
    list-style: none;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
    color: #000;
}

h1 {
    font-size: 22rem;
}

h2 {
    font-size: 20rem
}

h3 {
    font-size: 18rem
}

h4 {
    font-size: 16rem
}

h5 {
    font-size: 14rem
}

h6 {
    font-size: 12rem;
}

a {
    text-decoration: none;
    color: #000;
}

a img {
    border: none;
}

img {
    border: 0;
    vertical-align: bottom;
    width: 100%;
    height: 100%;
}

input {
    outline: none;
}

i {
    display: inline-block;
    vertical-align: middle;
    font-style: normal;
}

.container {
    width: 1920rem;
    overflow-x: hidden;
    margin: 0 auto;
    position: relative;
    height: auto;
}

.x-center {
    display: flex;
    align-items: center;
    align-content: center;
}

.y-center {
    display: flex;
    justify-content: center;
}

::-webkit-scrollbar {
    width: 8rem;
    height: 4rem;
}

::-webkit-scrollbar-thumb {
    background-color: darkgrey;
    border-radius: 4rem;
}

::-webkit-scrollbar-track {
    background: lightgrey;
    border-radius: 4rem;
}

.fw-bold-400 {
    font-weight: 400 !important;
}

.fw-bold-600 {
    font-weight: 600 !important;
}

.fw-bold-800 {
    font-weight: 800 !important;
}

.color-fff {
    color: #ffffff !important;
}

.color-000 {
    color: #000000 !important;
}

.clb {
    color: #235cd3 !important;
}

.opacity0 {
    opacity: 0;
}

.wrap {
    width: 100%;
    position: relative;
}

.content-wrap {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.more-btn {
    position: relative;
    text-transform: uppercase;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
    transition: all 0.3s;
    font-weight: 500;
    color: #FFFFFF;
    background: linear-gradient(to bottom, #0ceae5, #42eb84);
    width: 200rem;
    height: 68rem;
    border-radius: 36rem;
    font-size: 32rem;
    line-height: 60rem;
    text-align: center;
    border: 4rem solid #43eb84;
}

.more-btns {
    width: 200rem;
    height: 68rem;
    border-radius: 36rem;
    font-size: 32rem;
    line-height: 60rem;
    text-align: center;
    border: 4rem solid #43eb84;
    margin-left: 217rem;
    margin-top: 40rem;
    font-weight: 500;
    display: inline-block;
    color: #FFFFFF;
}

.more-btn.style-1 {
    margin-left: 217rem;
    margin-top: 40rem;
}

.more-btn.style-2 {
    margin-left: 1560rem;
    margin-top: 20rem;
}

.more-btn.style-3 {
    margin-left: 217rem;
    margin-top: 65rem;
}

.more-btn.style-4 {
    margin-left: 834rem;
    margin-top: 50rem;
}

.more-btn.style-5 {
    margin-left: 200rem;
    margin-top: 65rem;
}

.more-btn:hover {
    box-shadow: 0 0 30rem 4rem #87f5c7;
}

.more-btn::after {
    content: "";
    display: inline-block;
    height: 100%;
    width: 100%;
    border-radius: 100rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transition: all 0.5s;
}

.more-btn::after {
    background-color: #42eb84;
}

.more-btn:hover::after {
    transform: scaleX(1.6) scaleY(1.8);
    opacity: 0;
}

.sub-news-left {
    width: 545rem;
}

.sub-news-list {
    width: 100%;
    min-height: 931rem;
    padding: 50rem;
}

.sub-news-list a {
    width: 100%;
    line-height: 28rem;
    font-size: 18rem;
    color: #FFFFFF;
    overflow: hidden;
    display: block;
    padding-left: 20rem;
    text-align: right;
    transition: all .2s;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.sub-news-list a:hover {
    transform: scale(1.05);
}

.sub-news-list a.cur {
    transform: scale(1.05);
}

.sub-news {
    padding: 50rem;
}

.sub-news .date {
    width: 100%;
    margin-top: 24rem;
    font-size: 22rem;
    color: #555555;
    text-align: center;
}

.sub-news .title {
    width: 100%;
    color: #562f22;
    font-size: 30rem;
    text-align: center;
}

.sub-news .info {
    height: auto !important;
    min-height: 931rem;
    line-height: 28rem;
    float: left;
    margin-top: 45rem;
    color: #161616;
    text-align: justify;
    text-justify: inter-ideograph;
}

.company-info {
    width: 645rem;
    height: 1080rem;
    background-image: url("../images/sub-logo_02.jpg");
    padding-top: 212rem;
    position: fixed;
    top: 0;
    right: 0;
}

.company-info.bg-1 {
    height: 810rem;
    background-image: url("../images/sub_logo_1.jpg");
}

.company-info .logo-name {
    width: 100%;
    height: 167rem;
    display: flex;
    align-content: center;
    align-items: center;
    padding-left: 26rem;
}

.company-info .logo-name img {
    width: 106rem;
    height: 167rem;
}

.company-info .logo-name .name {
    margin-top: 15rem;
    margin-left: 10rem;
}

.company-info .logo-name .name .zn{
    font-size: 32rem;
    font-weight: 600;
    color: #ffffff;
}

.company-info .logo-name .name .en{
    font-size: 16rem;
    color: #ffffff;
    margin-top: 10rem;
}

.company-info.bg-1 .company-info .logo-name .name .zn {
    font-size: 28rem;
}

.company-info.bg-1 .company-info .logo-name .name .en {
    font-size: 14rem;
}

.company-info .big-en {
    margin-top: 76rem;
    width: 100%;
    text-align: center;
    font-size: 120rem;
    font-weight: 800;
    color: #ffffff;
}

.footer-wrap {
    width: 100%;
    height: 167rem;
    display: flex;
    justify-content: space-between;
    padding-left: 130rem;
    padding-right: 70rem;
}

.footer-wrap .logo-name {
    width:400rem;
    display: flex;
    align-content: center;
    align-items: center;
    padding-left: 26rem;
}

.footer-wrap .logo-name img {
    width: 90rem;
    height: 136rem;
}

.footer-wrap .logo-name .name {
    margin-top: 15rem;
    margin-left: 10rem;
}

.footer-wrap .logo-name .name .zn{
    font-size: 20rem;
    font-weight: 600;
    color: #ffffff;
    letter-spacing: 2rem;
}

.footer-wrap .logo-name .name .en{
    font-size: 12rem;
    color: #ffffff;
    margin-top: 10rem;
}

.footer-wrap .menu-list {
    width: 850rem;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer-wrap .menu-list .item {
    width: 20%;
}

.footer-wrap .menu-list .item .icon-wrap {
    width: 90rem;
    height: 90rem;
    border: 1rem solid #FFFFFF;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .3s;
    margin: 0 auto;
}

.footer-wrap .menu-list .item .icon-wrap .icon{
    position: relative;
}

.footer-wrap .menu-list .item .icon-wrap .icon img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.footer-wrap .menu-list .item:hover .icon-wrap {
    border-color: #1dca4e;
}

.footer-wrap .menu-list .item:hover .icon-wrap .icon1 {
    opacity: 0;
}

.footer-wrap .menu-list .item:hover .icon-wrap .icon0 {
    opacity: 1;
}

.footer-wrap .menu-list .item .t {
    font-size: 15rem;
    text-align: center;
    margin-top: 10rem;
    color: #FFFFFF;
}

.footer-wrap .menu-list .item:hover .t {
    color: #1dca4e;
}

.footer-wrap .top {
    margin-left: 80rem;
    margin-top: 25rem;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-content: baseline;
    cursor: pointer;
}

.footer-wrap .top .icon{
    width: 24rem;
    height: 24rem;
}

.footer-wrap .top .t {
    font-size: 14rem;
    color: #ffffff;
    margin-top: 4rem;
    width: 100%;
    text-align: center;
}


.sub-news {
    width: 1300rem !important;
    margin-left: 0 !important;
}

.index-gl {
    width: 1920rem;
    height: 742rem;
    position: absolute;
    top: 60rem;
    left: 0;
    opacity: 0;
    z-index: 2;
}

.index-wl {
    width: 1920rem;
    height: 742rem;
    position: absolute;
    top: 60rem;
    left: 0;
}

.index-rt {
    width: 624rem;
    height: 922rem;
    position: absolute;
    top: 31rem;
    left: 135rem;
    z-index: 3;
}

.index-eath-wrap {
    position: absolute;
    top: 200rem;
    right: 90rem;
    width: 846rem;
    height: 848rem;
}

.index-eath-wrap .index-eath {
    transition: opacity .2s;
    position: absolute;
    top: 0;
    left: 0;
}

.index-eath-wrap .index-eath-1 {
    opacity: 1;
}

.index-eath-wrap .index-eath-2 {
    opacity: 0;
}

.index-eath-wrap:hover .index-eath-1 {
    opacity: 0;
}

.index-eath-wrap:hover .index-eath-2 {
    opacity: 1;
}

.index-eath.ani {
    animation: eath-rotate 10s linear infinite;
}

@keyframes eath-rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.index-bg-1l {
    position: absolute;
    top: 0;
    right: 0;
    width: 1120rem;
    height: 895rem;
    z-index: 2;
}

.index-bg-1n1i {
    position: absolute;
    top: 50rem;
    left: 790rem;
    width: 324rem;
    height: 115rem;
    z-index: 3;
}

.sparkle-button {
    position: relative;
    width: 300rem;
    height: 300rem;
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
}


.sparkle-button .button {
    --cut: 1rem;
    --active: 0;
    --bg:
            radial-gradient(
                    40% 50% at center 100%,
                    hsl(178 calc(var(--active) * 97%) 72% / var(--active)),
                    transparent
            ),
            radial-gradient(
                    80% 100% at center 120%,
                    hsl(145 calc(var(--active) * 97%) 70% / var(--active)),
                    transparent
            ),
            hsl(145 calc(var(--active) * 97%) calc((var(--active) * 44%) + 12%));
    /*background: var(--bg);*/
    background: #89b5ff;
    font-size: 44rem;
    font-weight: 500;
    border: 0;
    cursor: pointer;
    padding: 30rem 50rem;
    display: flex;
    align-items: center;
    gap: 2.5rem;
    white-space: nowrap;
    border-radius: 100rem;
    position: relative;
    /*box-shadow:*/
    /*        0 0 calc(var(--active) * 6em) calc(var(--active) * 3em) hsl(260 97% 61% / 0.75),*/
    /*        0 0.05em 0 0 hsl(260 calc(var(--active) * 97%) calc((var(--active) * 50%) + 30%)) inset,*/
    /*        0 -0.05em 0 0 hsl(260 calc(var(--active) * 97%) calc(var(--active) * 60%)) inset;*/
    /*box-shadow: 0 0 calc(var(--active) * 2em) calc(var(--active) * 2em) hsl(145 97% 61% / 0.4);*/
    box-shadow: 0 0 10rem 5rem #3167cf;
    transition: box-shadow .25s, scale .25s, background .25s;
    scale: calc(1 + (var(--active) * 0.1));
    z-index: 2;
}

.sparkle-button .button.active {
    box-shadow: 0 0 3em 3em hsl(145 97% 61% / .4);
    background: linear-gradient(to bottom, #0ceae5, #17e9ce, #22e0ab, #3be88b, #42ea80);
    --active: 1;
    --play-state: running;
}

.sparkle-button .button.s1 {
}

.sparkle-button .button:active {
    scale: 1;
}

.sparkle-button svg {
    overflow: visible !important;
}

.sparkle-button .sparkle path {
    color: hsl(0 0% calc((var(--active, 0) * 70%) + var(--base)));
    transform-box: fill-box;
    transform-origin: center;
    fill: currentColor;
    stroke: currentColor;
    animation-delay: calc((.25s * 1.5) + (var(--delay) * 1s));
    animation-duration: 0.6s;
    transition: color .25s;
}

.sparkle-button .button:is(:hover, :focus-visible) path {
    animation-name: sparklebounce;
}

@keyframes sparklebounce {
    35%, 65% {
        scale: var(--scale);
    }
}
.sparkle-button .sparkle path:nth-of-type(1) {
    --scale: 0.5;
    --delay: 0.1;
    --base: 40%;
}

.sparkle-button .sparkle path:nth-of-type(2) {
    --scale: 1.5;
    --delay: 0.2;
    --base: 20%;
}

.sparkle-button .sparkle path:nth-of-type(3) {
    --scale: 2.5;
    --delay: 0.35;
    --base: 30%;
}

.sparkle-button .button:before {
    content: "";
    position: absolute;
    inset: -0.25em;
    z-index: -1;
    border: 0.25em solid hsl(148 97% 50% / 0.5);
    border-radius: 100rem;
    opacity: var(--active, 0);
    transition: opacity .25s;
}

.sparkle-button .spark {
    position: absolute;
    inset: 0;
    border-radius: 100rem;
    rotate: 0deg;
    overflow: hidden;
    mask: linear-gradient(white, transparent 50%);
    animation: sparkflip calc(1.8s * 2) infinite steps(2, end);
}

@keyframes sparkflip {
    to {
        rotate: 360deg;
    }
}

.sparkle-button .spark:before {
    content: "";
    position: absolute;
    width: 200%;
    aspect-ratio: 1;
    top: 0%;
    left: 50%;
    z-index: -1;
    translate: -50% -15%;
    rotate: 0;
    transform: rotate(-90deg);
    opacity: calc((var(--active)) + 0.4);
    background: conic-gradient(
            from 0deg,
            transparent 0 340deg,
            white 360deg
    );
    transition: opacity .25s;
    animation: sparkrotate 1.8s linear infinite both;
}

.sparkle-button .spark:after {
    content: "";
    position: absolute;
    inset: var(--cut);
    border-radius: 100rem;
}

.sparkle-button .backdrop {
    position: absolute;
    inset: var(--cut);
    /*background: var(--bg);*/
    background: #89b5ff;
    border-radius: 100rem;
    transition: background .25s;
}

.sparkle-button .backdrop.active {
    background: linear-gradient(to bottom, #0ceae5, #17e9ce, #22e0ab, #3be88b, #42ea80);
}

@keyframes sparkrotate {
    to {
        transform: rotate(90deg);
    }
}

.sparkle-button .particle-pen {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: 1;
    -webkit-mask: radial-gradient(white, transparent 65%);
    z-index: 1;
    opacity: var(--active, 0);
    transition: opacity .25s;
    display: block;
}

.sparkle-button .particle-pen.active {
    --active: 1;
    --play-state: running;
}

.sparkle-button .particle {
    width: calc(var(--size, 0.25) * 1rem);
    aspect-ratio: 1;
    position: absolute;
    top: calc(var(--y) * 1%);
    left: calc(var(--x) * 1%);
    opacity: var(--alpha, 1);
    animation: particlefloatOut calc(var(--duration, 1) * 1s) calc(var(--delay) * -1s) infinite linear;
    transform-origin: var(--origin-x, 1000%) var(--origin-y, 1000%);
    z-index: -1;
    animation-play-state: var(--play-state, paused);
}

.sparkle-button .particle path {
    fill: #FFFFFF;
    stroke: none;
}

.sparkle-button .particle.sty1 path {
    fill: #3167cf;
}

.sparkle-button .particle:nth-of-type(even) {
    animation-direction: reverse;
}

@keyframes particlefloatOut {
    to {
        rotate: 360deg;
    }
}

.sparkle-button .text {
    translate: 2% -6%;
    letter-spacing: 0.01ch;
    /*background: linear-gradient(90deg, hsl(0 0% calc((var(--active) * 100%) + 65%)), hsl(0 0% calc((var(--active) * 100%) + 26%)));*/
    -webkit-background-clip: text;
    color: hsl(0 0% calc((0 * 70%) + 40%));
    transition: color .25s;
}

.sparkle-button .text.active {
    color: #FFFFFF;
}

.sparkle-button .button svg {
    inline-size: 1.25em;
    translate: -25% -5%;
}

#outerbox {
    width:100%;
    height:100%;
    display:none;
    position:fixed;
    top:0;
    left:0;
    background:rgba(0,0,0,0.6);
    z-index:199999999;
    justify-content: center;
    align-items: center;
}
#innerbox {
    position:absolute;
    z-index:99;
}
#innerbox #bigimg {
    cursor:grab;
}
